package com.fowo.api.model.supplier.my.task;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.fowo.api.common.validator.*;
import io.swagger.v3.oas.annotations.media.Schema;
import javax.validation.constraints.*;
import lombok.Getter;
import lombok.Setter;

/**
 * 供应商自建任务 预览导入辅助模型(全字段为文本类型)
 * @author yl_ls
 */
@Getter
@Setter
public class SupplierMyTaskImportPo {

  /** 任务编号 */
  @ExcelProperty("*任务编号")
  @NotBlank(message = "任务编号不能为空")
  private String myId;

  /** 执行人员 */
  @ExcelProperty("*执行人员")
  @NotBlank(message = "执行人员不能为空")
  @Size(max = 50, message = "执行人员长度不能超过50")
  private String doUserName;

  @ExcelIgnore
  @Schema(title = "*执行人员")
  private String doUser;

  /** 标题 */
  @ExcelProperty("*标题")
  @NotBlank(message = "标题不能为空")
  @Size(max = 50, message = "标题长度不能超过50")
  private String title;

  /** 任务内容 */
  @ExcelProperty("*任务内容")
  @NotBlank(message = "任务内容不能为空")
  @Size(max = 50, message = "任务内容长度不能超过50")
  private String content;

  /** 执行时间 */
  @ExcelProperty("*执行时间")
  @NotBlank(message = "执行时间不能为空")
  @DateTimeString(message = "执行时间不是有效的时间日期格式")
  private String doTime;

  /** 完成情况 */
  @ExcelProperty("完成情况")
  @Size(max = 50, message = "完成情况长度不能超过50")
  private String doContent;

  /** 状态 */
  @ExcelProperty("状态")
  private String status;

  /** 备注 */
  @ExcelProperty("备注")
  @Size(max = 50, message = "备注长度不能超过50")
  private String remark;

  /** 流程编码 */
  @ExcelProperty("*流程编码")
  @NotBlank(message = "流程编码不能为空")
  private String enCode;
}
